package br.com.future.bo;

import java.util.List;

import br.com.future.dao.interfaces.DAOFactory;
import br.com.future.dao.interfaces.AdvogadoDAOI;
import br.com.future.model.Advogado;

/**
 * @ Classe AdvogadoBO.
 * @author Future Technology Brazil
 * @version 1.1 03/10/2012
 */
public class AdvogadoBO {
	
	/**
	 * Lista advogado.
	 *
	 * @return the list
	 */
	public static List<Advogado> listaAdvogado(){
		AdvogadoDAOI advogadoDAO = DAOFactory.getDAOFactory(DAOFactory.ORACLE).getAdvogadoDAO();
		return advogadoDAO.consultar();
	}
	
	/**
	 * Lista advogado filtrado por codigo do tipo de causa.
	 *
	 * @return the list
	 */
	public static List<Advogado> listaAdvogado(int codTipoCausa, String nomePessoa ){
		AdvogadoDAOI advogadoDAO = DAOFactory.getDAOFactory(DAOFactory.ORACLE).getAdvogadoDAO();
		return advogadoDAO.consultarAdvogadosPorTipoDeCausa(codTipoCausa, nomePessoa);
	}
	
	/**
	 * Incluir advogado.
	 *
	 * @param advogado the advogado
	 */
	public static void incluirAdvogado(Advogado advogado){
		AdvogadoDAOI advogadoDAO = DAOFactory.getDAOFactory(DAOFactory.ORACLE).getAdvogadoDAO();
		advogadoDAO.incluir(advogado);
	}
	
	/**
	 * Consultar advogado.
	 *
	 * @param numOAB the num oab
	 * @return the advogado
	 */
	public static Advogado consultarAdvogado(long numOAB){
		AdvogadoDAOI advogadoDAO = DAOFactory.getDAOFactory(DAOFactory.ORACLE).getAdvogadoDAO();
		return advogadoDAO.consultar(numOAB);
	}
	/**
	 * Consultar advogado.
	 *
	 * @param nomeAdvogado the nome Advogado
	 * @return the lista de advogados
	 */
	public static List<Advogado> consultarAdvogado(String nomeAdvogado){
		AdvogadoDAOI advogadoDAO = DAOFactory.getDAOFactory(DAOFactory.ORACLE).getAdvogadoDAO();
		return advogadoDAO.consultar(nomeAdvogado);
	}
	
}
